package com.jxy.homepage.config.nacos;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

/**
 * NacosConfig
 * 在 Nacos 中，服务调用主要是通过 RestTemplate + Ribbon 实现的，RestTemplate 是 Spring 提供的 Restful 请求实现类，
 * 而 Ribbon 是客户端负载均衡器，通过 Ribbon 可以获取服务实例的具体信息（IP 和端口号），之后再通过 RestTemplate 加服务实例的具体信息就可以完成一次服务调用了
 *
 * @author Jxy
 * @date 2022/3/11
 * @Description 微服务调用配置
 */
@Configuration
public class NacosConfig {

    /**
     * 使 RestTemplate 自动支持 Ribbon 负载均衡
     */
    @LoadBalanced
    @Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

}
